A streaming media service generally includes a content server, a content player, and a communications network connecting the content server to the content player. The content server is configured to store (or provide access to) media files (or “streams”) made available to end users. Each stream may provide a digital version of a feature length film, a television program, a sporting event, a staged or live event captured by recorded video, and the like. Streams also include media content created specifically for distribution online. Media playback by a client device is typically referred to as “streaming” because the content server transmits portions of a media file to the client device, which in turn decodes and initiates playback without waiting for the complete stream to be received.
To locate content to stream, a user may perform a “search” of media files available on the content server. In response to receiving a search query, the content server may determine a collection of media titles relevant to the search query and provide a webpage containing links which can be clicked to access one or more of the streaming media titles. In addition to query results, the content server may also provide a list of “recommendations” including, e.g., content which users would be interested in viewing.
It is not uncommon for users to search for media titles that are unavailable on content servers. One approach for providing results to such queries relies on past behavior of users to return relevant results. For example, the results might be determined based on media titles which were streamed by other users who entered the same query. Similarly, one approach for providing media title recommendations relies on past user behavior in, e.g., viewing certain titles after other titles. These approaches are unhelpful where records of past user behavior are lacking.